package cn.lanjh.system.controller;

import cn.lanjh.common.core.domain.R;
import cn.lanjh.system.domain.SysConfig;
import cn.lanjh.system.service.ISysConfigService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * 参数配置 提供者
 *
 * @author zmr
 * @date 2019-05-20
 */
@RestController
@RequestMapping("config")
public class SysConfigController {

    @Autowired
    private ISysConfigService sysConfigService;

	/**
	 * 根据键名查询参数配置信息
	 *
	 * @param configKey 参数键名
	 * @return 参数键值
	 */
	@GetMapping("selectConfigByKey/{configKey}")
	public String selectConfigByKey(@PathVariable("configKey") String configKey) {
		return sysConfigService.selectConfigByKey(configKey);

	}

    /**
     * 查询参数配置
     */
    @GetMapping("get/{configId}")
    public SysConfig get(@PathVariable("configId") Long configId) {
        return sysConfigService.selectConfigById(configId);

    }

    /**
     * 查询参数配置列表
     */
    @GetMapping("list")
    public R list(SysConfig sysConfig) {
        return R.ok(sysConfigService.selectConfigList(sysConfig));
    }


    /**
     * 新增保存参数配置
     */
    @PostMapping("save")
    public R addSave(@RequestBody SysConfig sysConfig) {
        return R.ok(sysConfigService.insertConfig(sysConfig));
    }

    /**
     * 修改保存参数配置
     */
    @PostMapping("update")
    public R editSave(@RequestBody SysConfig sysConfig) {
        return R.ok(sysConfigService.updateConfig(sysConfig));
    }

    /**
     * 删除参数配置
     */
    @PostMapping("remove")
    public R remove(String ids) {
        return R.ok(sysConfigService.deleteConfigByIds(ids));
    }

}
